127 research outputs found

    Eine Methode zur kollaborativen Anforderungserhebung und entscheidungsunterstützenden Anforderungsanalyse

    Full text link
    Gegenstand dieses Beitrags ist die Entwicklung einer theoretisch fundierten Methode für eine kollaborative Anforderungserhebung mitsamt entscheidungsunterstützender Anforderungsanalyse

    A method for collaborative requirements elicitation and decision-supported requirements analysis

    Get PDF
    As software systems become more and more complex with a multitude of stakeholders involved in development activities, novel ways of conducting the process of requirements elicitation and analysis are to be found. Therefore, this paper introduces a method for collaborative requirements elicitation and decision-supported requirements analysis. Accompanying this method, appropriate tools and techniques, both existing and custom-made, are referred to. The method is designed for a geographically distributed collaborative environment in order to support software manufacturers as well as IT departments which develop software solutions for multiple users or even consortiums of customers.1st International Workshop on Advanced Software Engineering: Expanding the Frontiers of Software Technology - Session 3: Software Development ProcessRed de Universidades con Carreras en Informática (RedUNCI

    Analyzing the Applicability of an Agile Methodology to Distributed Collaborative Software Development

    Full text link
    Today, information technology (IT) has penetrated most domains of business and private life. The knitting of IT-systems and their dependencies are getting more complex every day. For businesses, this development can mean great opportunities. IT has become a main driver for competitive advantage and business success. On the other hand, misled software development (SD) projects can mean an existential threat to the operational and financial situation of a company. The efficient development of effective software is an essential part of optimally facing present and future challenges. Managing SD with traditional methodologies often leads to high planning and management overhead and still, severe schedule deviations and budget overruns cannot be eliminated. The sequential and plan-driven traditional approaches are often not able to support an adequate reaction to either internally or externally caused changes in requirements. Complex and unclear system landscapes with diverse interfaces, ambiguous customer requirements, changing business strategies or fluctuating legal requirements are just a few examples for possible sources of changing system requirements. Today, Extreme Programming (XP) is the most popular agile development methodology supported by the Agile Alliance. Its name was chosen because it claims to bring common sense to an extreme level. It focuses on communication, simplicity, feedback and courage, to improve the speed and quality of SD. Formal processes and documentation are neglected in favor of tacit knowledge to improve flexibility. Close communication between developers and the continuous integration of customer representatives are key components of XP. XP was initially developed for small to medium sized collocated development teams. This paper analyzes to what extent XP can be transferred to larger distributed developing endeavors. The focus is on XP, because it is the methodology with the highest congruence to the original Agile Manifesto. It does not claim to be all new, but to be an aligned composition of well established ideas and practices from other methodologies

    Evaluating the Applicability of Requirements Engineering Tools for Distributed Software Development

    Full text link
    Requirements engineering (RE) is the first part of the software engineering process. It consists of distinct phases in which certain stakeholders deal with the problem of creating and maintaining a systems requirements document. This artifact should clarify what the customer expects from the system and how the developer should design it. RE is often mentioned as the most critical phase in the software development process. Mistakes made during the requirements phase can cost up to a hundred times more than coding errors. Moreover, The Standish Group International (2003) found out, that on average only 54%, of the originally defined features of a project are delivered and 45% of those features that are delivered are never used. Misidentified requirements are the most significant source of customer dissatisfaction with delivered systems. The problem of creating the requirements document is reinforced through geographical distance between the different people involved in the RE process. Not only the distance between customers or users and the engineers constitutes a problem, often the engineers themselves are distributed all over the world, e.g. due to outsourcing decisions and offshoring projects. The number of firms participating in global software development was low, but today 203 of the US Fortune 500 engage in offshore outsourcing endeavors. Today, more than 50 nations participate in collaborative software development projects internationally. The reasons are cost advantages and a large and well-educated pool of labor—India is a famous example. Although RE is always distributed in some way due to the distance between the different stakeholders, the term distributed RE is used to emphasize the distance between them, e.g. in global RE processes. Instead of using simple text files or diagrams for communicating both requirements and possible changes to them, nowadays a lot of tools from different vendors exist to help mastering the RE process. These tools belong to the class of so-called computer-aided software engineering (CASE) tools. Many tools support a multi-user environment that is needed for distributed RE. These tools are intended to help overcoming some of the problems mentioned before. Therefore, the aim of this paper is to give an overview over existing RE tools on the market and to evaluate how they support the different phases of RE - especially a distributed RE process. The paper is structured as follows: In chapter 2 the generic phases of the RE process are shortly described, followed by a short market overview of tools in chapter 3. The four market leading tools are evaluated in detail in chapter 4, supplemented by a short description of some interesting other tools, especially from smaller German providers. Finally, chapter 5 summarizes the results of the evaluation

    Konzeption und Implementierung eines Werkzeugs für nutzenbasiertes Traceability- und Rationale-Management in verteilten Entwicklungsumgebungen

    Full text link
    Unter Nachvollziehbarkeit (engl: Traceability) wird die Möglichkeit verstanden, verschiedene Artefakte (beispielsweise Anforderungen, Designdokumente oder Quellcode) so miteinander zu verknüpfen, dass stets nachvollzogen werden kann, welche Artefakte wie miteinander in Beziehung stehen. Die Nachvollziehbarkeit sollte hierbei sowohl vorwärts- als rückwärtsgerichtet möglich sein. Ebenso wichtig wie die Nachvollziehbarkeit der Beziehungen zwischen den Artefakten ist es, die Gründe festzuhalten, die zu Entscheidungen in der Softwareentwicklung geführt haben (engl.: Rationale Management). Werden diese Informationen festgehalten, so können beispielsweise auch dann noch Entscheidungen nachvollzogen werden, wenn der entsprechende Mitarbeiter nicht mehr verfügbar ist. Werden allerdings alle Traceability-Informationen festgehalten, so entsteht unter Umständen einen Überfluss an Informationen, der nur noch schwer zu durchschauen ist. Einige Anforderungen sind möglicherweise nicht so wichtig wie andere, werden diese aber gleichrangig neben den Wichtigeren dargestellt, so kann der Überblick verloren gehen. Daher sollte Traceability- und Rationale-Management nutzen- oder wertbezogen (engl.: value-based) betrieben werden. Unter dem Wert wird in diesem Zusammenhang der Nutzen verstanden, mit dem ein Nutzer der Software bzw. der Auftraggeber eine Anforderung bewertet. Die Bewertung einer Anforderung durch die Entwickler kann von der Bewertung durch die Anwender deutlich abweichen, daher sollte der Hauptfokus bei der Entwicklung auf dem Nutzen für den Kunden liegen. Durch die Verknüpfung der Anforderungen mit den zugehörigen Artefakten werden wichtigere Artefakte auf diese Weise automatisch höher priorisiert. Nutzenbezogenes Traceability- und Rationale-Management führt so unter anderem zu einem besseren Verständnis des Codes, zu besserer Wartbarkeit und Dokumentation, zur Qualitätssicherung, Fehlerreduktion und höherer Effizienz der Entwicklung sowie letztendlich zu höherer Kundenzufriedenheit. Ziel dieses Artikels ist es, die Entwicklung eines Werkzeug vorzustellen, das Daten über Anforderungen, Aktivitäten und Nutzer, die in einer kollaborativen Softwareentwicklungsplattform verwaltet werden, extrahiert und die Beziehungen dieser Entitäten untereinander visualisiert und analysiert. Dabei sollen entsprechend dem Wert der Anforderungen und daraus resultierender Artefakte wichtige Beziehungen besonders hervorgehoben werden. Zusätzlich sollen die Rationale-Informationen von verschiedenen Artefakttypen dargestellt und analysiert werden können

    Analyse der Übertragbarkeit der Open-Source-Entwicklungsmethodik in den kommerziellen Bereich

    Full text link
    Open Source-Software findet bereits seit einiger Zeit erfolgreich Einzug in die Unternehmenspraxis. Das quelloffene Betriebssystem GNU/Linux sowie der HTTP-Server Apache haben sich mittlerweile in vielen großen wie kleinen Unternehmen zu einem Standard etabliert. Eine wesentliche Grundlage für den Erfolg dieser und weiterer Open Source-Produkte bilden die entsprechenden Entwicklungsmethoden, die zur Unterstützung verteilter Zusammenarbeit innerhalb der Open Source Communities entstanden sind. Dies hat zur Folge, dass Einflüsse aus der Open Source-Welt auf zweierlei Arten in die Unternehmenspraxis diffundieren: Neben dem vermehrten Einzug von quelloffene Anwendungen in unternehmenskritische Bereiche einerseits führt die Tatsache, dass diese Anwendungen verteilt und quelloffen entwickelt werden, andererseits dazu, dass immer mehr Unternehmen dazu übergehen, die entsprechenden Methoden und Techniken auch in ihren kommerziellen Softwareprojekten einzusetzen. Vor allem Letzteres soll im Zentrum dieser Arbeit stehen

    An Experimental, Tool-Based Evaluation of Requirements Prioritization Techniques in Distributed Settings

    Get PDF
    In this paper, we compare and analyze three common techniques for prioritizing software requirements: Analytic Hierarchy Process (AHP), Cumulative Voting (CV) and Likert Scale Technique (LST). These techniques are based on a ratio scale and are applied within this research as part of a hierarchical approach to requirements analysis on different levels of abstraction. For the systematic evaluation of these techniques in distributed settings, a controlled experimental setting was developed and carried out via the Internet. Therefore, a particular Web application was developed and data from 199 subjects was collected. The overall results indicate that LST is a simple, fast, and well-scaling prioritization technique, whereas slightly less precise than the other two techniques. However if accuracy is an important criterion, and a more complicated and slower technique is accepted, CV has proven to be most adequate. For the AHP, particularly when used with many requirements, a recommendation cannot be given because of poor scalability

    Spousal Congruence on Disability, Pain, and Spouse Responses to Pain

    Get PDF
    We examined congruence between chronic pain patients and their spouses on their reports of patient pain severity, patient disability, and spouse responses to pain. Patients reported that they were more physically and psychosocially disabled than their spouses reported them to be. However, spouses reported that the patients’ pain was more severe than patients reported. Depressive disorders in the patient and gender interacted with patient–spouse ratings. For physical and psychosocial disability, depressed patient couples reported significantly larger differences in disability ratings than nondepressed patient couples. In addition, female patients’ disability was rated as more severe by the female patients than by their husbands. Male patient couples did not report differences on physical disability. Findings relating to other forms of disability and to spouse responses are also described.The results are discussed in the context of an interpersonal perspective of chronic pain and have implications for the assessment of pain and disability

    Entwicklungsmethodiken zur kollaborativen Softwareerstellung – Stand der Technik

    Full text link
    Die weltweit wachsende Nachfrage nach Unternehmenssoftware erfordert immer neue Methoden und Formen der Zusammenarbeit (Kollaboration) bei der Softwareerstellung. Zu diesem Zweck untersucht und vergleicht dieses Arbeitspapier existierende Vorgehensmodelle und deren Evolution. Zusätzlich werde erste Ansätze zur kollaborativen Softwareerstellung vorgestellt und ihre Eignung für ein kommerzielles Umfeld analysiert. Die Arbeit verwendet hierzu einen eigenen Vergleichsrahmen, der u.a. auch so genannte "Kollaborationspunkte“ in Betracht zieht, d.h. Aktivitäten im Prozess an denen das Einbinden mehrerer Entwickler und/oder Anwender vorteilhaft ist. Die Erkenntnisse aus der vergleichenden Analyse des Stands der Technik werden schließlich dazu verwendet, Defizite existierender Ansätze aufzuzeigen und Anforderungen für unterstützende Werkzeuge abzuleiten
    corecore